/*
 * 文件名:Vehicle.java
 * 创建时间:2010-10-01
 * 版本:2.0
 * 版权所有:杨涛 walle1027@gmail.com
 */
package com.yangtao.wms.domain;

import com.yangtao.framework.hibernate.BaseEntity;
import org.hibernate.annotations.Cascade;
import org.hibernate.annotations.CascadeType;

import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @author 代码生成器 v-2.0
 * @version 2.0
 */
@Entity
@Table(name = "WMS_MST_VEHICLE")
public class Vehicle extends BaseEntity implements Serializable {

	private static final long serialVersionUID = 1L;

	/**
	 * 车辆代码
	 */
	@Column(name = "VEHICLE_CODE", length = 15)
	private String vehicleCode;
	/**
	 * 车牌照
	 */
	@Column(name = "LICENSE", length = 20)
	private String license;
	/**
	 * 助记码
	 */
	@Column(name = "HELP_CODE", length = 20)
	private String helpCode;
	/**
	 * 所有者
	 */
	@Column(name = "OWNER", length = 50)
	private String owner;
	/**
	 * 类型
	 */
	@Column(name = "OWN_TYPE", length = 20)
	private String ownType;
	/**
	 * 公司
	 */
	@Column(name = "COMPANY_ID", length = 50)
	private String companyId;
	/**
	 * 公司名称
	 */
	@Column(name = "COMPANY_NAME", length = 50)
	private String companyName;
	/**
	 * 部门ID
	 */
	@Column(name = "ORGANIZATION_ID", length = 50)
	private String organizationId;
	/**
	 * 登记日期
	 */
	@Temporal(TemporalType.TIMESTAMP)
	private Date registerDate;
	/**
	 * 承运商
	 */
	@Column(name = "SUPPLIER", length = 20)
	private String supplier;
	/**
	 * 车型
	 */
	@Column(name = "VEHICLE_TYPE", length = 20)
	private String vehicleType;
	/**
	 * 状态
	 */
	@Column(name = "STATUS", length = 10)
	private String status;
	/**
	 * 车辆详细信息表
	 */
	@OneToOne(fetch = FetchType.LAZY, mappedBy = "vehicle")
	@Cascade(CascadeType.ALL)
	private VehicleDetail vehicleDetail;
	/**
	 * 车型表
	 */
	@OneToMany(fetch = FetchType.LAZY, mappedBy = "vehicle")
	private List<VehType> vehType;


	/**
	 * 获取  车辆代码
	 *
	 * @return vehicleCode
	 */
	public String getVehicleCode() {
		return vehicleCode;
	}

	/**
	 * 设置 车辆代码
	 *
	 * @param vehicleCode 车辆代码
	 */
	public void setVehicleCode(String vehicleCode) {
		this.vehicleCode = vehicleCode;
	}

	/**
	 * 获取  车牌照
	 *
	 * @return license
	 */
	public String getLicense() {
		return license;
	}

	/**
	 * 设置 车牌照
	 *
	 * @param license 车牌照
	 */
	public void setLicense(String license) {
		this.license = license;
	}

	/**
	 * 获取  助记码
	 *
	 * @return helpCode
	 */
	public String getHelpCode() {
		return helpCode;
	}

	/**
	 * 设置 助记码
	 *
	 * @param helpCode 助记码
	 */
	public void setHelpCode(String helpCode) {
		this.helpCode = helpCode;
	}

	/**
	 * 获取  所有者
	 *
	 * @return owner
	 */
	public String getOwner() {
		return owner;
	}

	/**
	 * 设置 所有者
	 *
	 * @param owner 所有者
	 */
	public void setOwner(String owner) {
		this.owner = owner;
	}

	/**
	 * 获取  类型
	 *
	 * @return ownType
	 */
	public String getOwnType() {
		return ownType;
	}

	/**
	 * 设置 类型
	 *
	 * @param ownType 类型
	 */
	public void setOwnType(String ownType) {
		this.ownType = ownType;
	}

	/**
	 * 获取  公司
	 *
	 * @return companyId
	 */
	public String getCompanyId() {
		return companyId;
	}

	/**
	 * 设置 公司
	 *
	 * @param companyId 公司
	 */
	public void setCompanyId(String companyId) {
		this.companyId = companyId;
	}

	/**
	 * 获取  公司名称
	 *
	 * @return companyName
	 */
	public String getCompanyName() {
		return companyName;
	}

	/**
	 * 设置 公司名称
	 *
	 * @param companyName 公司名称
	 */
	public void setCompanyName(String companyName) {
		this.companyName = companyName;
	}

	/**
	 * 获取  部门ID
	 *
	 * @return organizationId
	 */
	public String getOrganizationId() {
		return organizationId;
	}

	/**
	 * 设置 部门ID
	 *
	 * @param organizationId 部门ID
	 */
	public void setOrganizationId(String organizationId) {
		this.organizationId = organizationId;
	}

	/**
	 * 获取  登记日期
	 *
	 * @return registerDate
	 */
	public Date getRegisterDate() {
		return registerDate;
	}

	/**
	 * 设置 登记日期
	 *
	 * @param registerDate 登记日期
	 */
	public void setRegisterDate(Date registerDate) {
		this.registerDate = registerDate;
	}

	/**
	 * 获取  承运商
	 *
	 * @return supplier
	 */
	public String getSupplier() {
		return supplier;
	}

	/**
	 * 设置 承运商
	 *
	 * @param supplier 承运商
	 */
	public void setSupplier(String supplier) {
		this.supplier = supplier;
	}

	/**
	 * 获取  车型
	 *
	 * @return vehicleType
	 */
	public String getVehicleType() {
		return vehicleType;
	}

	/**
	 * 设置 车型
	 *
	 * @param vehicleType 车型
	 */
	public void setVehicleType(String vehicleType) {
		this.vehicleType = vehicleType;
	}

	/**
	 * 获取  状态
	 *
	 * @return status
	 */
	public String getStatus() {
		return status;
	}

	/**
	 * 设置 状态
	 *
	 * @param status 状态
	 */
	public void setStatus(String status) {
		this.status = status;
	}

	/**
	 * 获取 车辆详细信息表
	 *
	 * @return vehicleDetail
	 */
	public VehicleDetail getVehicleDetail() {
		return vehicleDetail;
	}

	/**
	 * 设置 车辆详细信息表
	 *
	 * @param vehicleDetail 车辆详细信息表
	 */
	public void setVehicleDetail(VehicleDetail vehicleDetail) {
		this.vehicleDetail = vehicleDetail;
	}

	/**
	 * 获取 车型表
	 *
	 * @return vehType
	 */
	public List<VehType> getVehType() {
		return vehType;
	}

	/**
	 * 设置 车型表
	 *
	 * @param vehType 车型表
	 */
	public void setVehType(List<VehType> vehType) {
		this.vehType = vehType;
	}


}
